Cell-based protocols for transmission systems are well known. Cells are sent individually, and routed over a network using addressing information in the cell. Usually the data need to be fitted into a number of such cells. Some protocols specify variable length cells. Some are connection oriented such as S.N.A., A.T.M., X-25 and frame relay. Others are connectionless, for example IP. Such known protocols can be seen to have a layered structure with overhead for different functions being added at successively lower layers, at a transmitting end. At a receiving end, the overhead is successively stripped out once its function has been achieved. One type of overhead is error protection information. Generally, it has been considered worthwhile to include error detection bits at some layer, and a mechanism at a higher layer to request retransmission of some part of the data if the data are sensitive to errors.
Error correction codes such as Hamming codes are also known. These enable most but not all errors to be detected and corrected. Error correction codes are typically used in applications such as data storage on hard disks. When data are stored, error correction is generated and stored along with the data. On retrieval of data from the disk, the error correction information can be used to detect and correct errors.
Such techniques are not used in cell based protocols because the large overhead which would be required is considered to be prohibitive, particularly for larger cells, and because error correction codes are relatively poor at detecting some types of errors. Therefore, to ensure that the number of undetected errors is minimised, error detection codes such as Cyclic Redundancy Check (CRC) codes or Reed-Solomon codes are used, together with retransmission of cells or groups of cells. One such known protocol, the ATM protocol will now be discussed in more detail.
The ATM protocol is an example of a cell-based protocol designed for data transfer over high speed, low error rate digital networks for multiple service types. ATM Adaptation Layers (AALs) shape the service data for the ATM protocol and provide error protection characteristics dictated by the properties of the transmission medium and the service. The data units entering the AAL have to be protected to satisfy the ITU-T's assured and unassured service recommendations. This error protection is achieved by concatenating each data unit with a header and trailer resulting in a variable length frame structure. The frame is then segmented into cells for transmission by the ATM protocol which in turn may have further protection.
The ATM protocol is characterised by the cells being of fixed length, and by its support for circuit emulation. ATM cells have headers with routing information and with header error correction information. There are currently a number of different AALs specified, each with different error handling features. For example AAL 5 includes error detection information, though not correction information at the frame level, but none is provided at the cell level, at least for the cell payload.
The ITU-T has recommended that erroneous frames be recovered by retransmissions of the entire frame in preference to individual cell retransmissions. Assured services carry significant disadvantages because of the retransmission system, including:
prolonged buffering at the transmitter, (i.e. at an access node where the ATM network is entered) PA1 prolonged buffering at the receiver, PA1 complex protocol acknowledgement structures and PA1 increased latency from acknowledgement messages and data retransmission. PA1 supplementing the data with error detection information; PA1 forming the supplemented data into at least one cell, the cell comprising cell routing information and a cell payload and wherein the cell payload comprises at least a portion of the supplemented data and error correction information for the portion; transmitting the cell to a destination; PA1 correcting an error in the cell using said error correction information; PA1 extracting the portion of the supplemented data from the cell; PA1 and detecting uncorrected errors in the data using said error detection information and reporting the uncorrected errors to an error processing means.
Protocols have been developed to provide selective cell retransmissions, for example BLINKBLT, although they cannot offer serious reductions in the service latency or buffering requirements. For these reasons the ITU-T is proposing to restrain assured services to point-to-point connections.
There is a selection of applications that requires low, though not perfect, error performance. The inventors have established that the overall error rate is limited by uncontrollable errors. Furthermore, any retransmissions penalise the application causing it to buffer data for prolonged periods. Many applications would benefit from bufferless transmission provided the error rates are sufficiently low, especially where equipment cost is an important factor.
GB 2216752 shows transmitting a block of data spread over a number of packets with additional redundant information for error correction being added to the block before transmission (forward error correction at the block level). The correction in the receiver can be carried out if sufficient correct packets are received. An automatic repeat request mechanism (ARQ) is used at the packet level if insufficient correct packets are received. In an alternative embodiment, the ARQ is carried out as soon as a packet is detected as being erroneous rather than waiting to see if sufficient packets from a block are received.
Various schemes including cell header correction without payload error correction are shown in EP 0516042, EP 0600380, EP 0445730, and U.S. Pat. No. 5,383,203. WO 95/14971 shows error detection based on redundant information spread over a number of frames or cells. Error detection triggers resynchronisation of transmitter and receiver encoding/decoding methods.
The present invention aims to improve on the known methods.